<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>API testing</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/API_testing"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-API_testing rootpage-API_testing skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">API testing</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */
.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}
/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1246091330">
/* start https://en.wikipedia.org/ */
.mw-parser-output .sidebar{width:22em;float:right;clear:right;margin:0.5em 0 1em 1em;background:var(--background-color-neutral-subtle,#f8f9fa);border:1px solid var(--border-color-base,#a2a9b1);padding:0.2em;text-align:center;line-height:1.4em;font-size:88%;border-collapse:collapse;display:table}body.skin-minerva .mw-parser-output .sidebar{display:table!important;float:right!important;margin:0.5em 0 1em 1em!important}.mw-parser-output .sidebar-subgroup{width:100%;margin:0;border-spacing:0}.mw-parser-output .sidebar-left{float:left;clear:left;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-none{float:none;clear:both;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-outer-title{padding:0 0.4em 0.2em;font-size:125%;line-height:1.2em;font-weight:bold}.mw-parser-output .sidebar-top-image{padding:0.4em}.mw-parser-output .sidebar-top-caption,.mw-parser-output .sidebar-pretitle-with-top-image,.mw-parser-output .sidebar-caption{padding:0.2em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-pretitle{padding:0.4em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-title,.mw-parser-output .sidebar-title-with-pretitle{padding:0.2em 0.8em;font-size:145%;line-height:1.2em}.mw-parser-output .sidebar-title-with-pretitle{padding:0.1em 0.4em}.mw-parser-output .sidebar-image{padding:0.2em 0.4em 0.4em}.mw-parser-output .sidebar-heading{padding:0.1em 0.4em}.mw-parser-output .sidebar-content{padding:0 0.5em 0.4em}.mw-parser-output .sidebar-content-with-subgroup{padding:0.1em 0.4em 0.2em}.mw-parser-output .sidebar-above,.mw-parser-output .sidebar-below{padding:0.3em 0.8em;font-weight:bold}.mw-parser-output .sidebar-collapse .sidebar-above,.mw-parser-output .sidebar-collapse .sidebar-below{border-top:1px solid #aaa;border-bottom:1px solid #aaa}.mw-parser-output .sidebar-navbar{text-align:right;font-size:115%;padding:0 0.4em 0.4em}.mw-parser-output .sidebar-list-title{padding:0 0.4em;text-align:left;font-weight:bold;line-height:1.6em;font-size:105%}.mw-parser-output .sidebar-list-title-c{padding:0 0.4em;text-align:center;margin:0 3.3em}@media(max-width:640px){body.mediawiki .mw-parser-output .sidebar{width:100%!important;clear:both;float:none!important;margin-left:0!important;margin-right:0!important}}body.skin--responsive .mw-parser-output .sidebar a>img{max-width:none!important}@media screen{html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-list-title,html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle{background:transparent!important}html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle a{color:var(--color-progressive)!important}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-list-title,html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle{background:transparent!important}html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle a{color:var(--color-progressive)!important}}@media print{body.ns-0 .mw-parser-output .sidebar{display:none!important}}
/* end https://en.wikipedia.org/ */
</style><table class="sidebar sidebar-collapse nomobile"><tbody><tr><td class="sidebar-pretitle">Part of a series on</td></tr><tr><th class="sidebar-title-with-pretitle"><a href="Software_development" title="Software development">Software development</a></th></tr><tr><td class="sidebar-content">
<div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Core activities</div><div class="sidebar-list-content mw-collapsible-content hlist">
<ul><li><a href="Data_modeling" title="Data modeling">Data modeling</a></li>
<li><a href="Software_development_process" title="Software development process">Processes</a></li>
<li><a href="Requirements_analysis" title="Requirements analysis">Requirements</a></li>
<li><a href="Software_design" title="Software design">Design</a></li>
<li><a href="Software_construction" title="Software construction">Construction</a></li>
<li><a href="Software_engineering" title="Software engineering">Engineering</a></li>
<li><a href="Software_testing" title="Software testing">Testing</a></li>
<li><a href="Debugging" title="Debugging">Debugging</a></li>
<li><a href="Software_deployment" title="Software deployment">Deployment</a></li>
<li><a href="Software_maintenance" title="Software maintenance">Maintenance</a></li></ul></div></div></td>
</tr><tr><td class="sidebar-content">
<div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Paradigms and models</div><div class="sidebar-list-content mw-collapsible-content hlist">
<ul><li><a href="Agile_software_development" title="Agile software development">Agile</a></li>
<li><a href="Cleanroom_software_engineering" title="Cleanroom software engineering">Cleanroom</a></li>
<li><a href="Incremental_build_model" title="Incremental build model">Incremental</a></li>
<li><a href="Software_prototyping" title="Software prototyping">Prototyping</a></li>
<li><a href="Spiral_model" title="Spiral model">Spiral</a></li>
<li><a href="V-model_(software_development)" title="V-model (software development)">V model</a></li>
<li><a href="Waterfall_model" title="Waterfall model">Waterfall</a></li></ul></div></div></td>
</tr><tr><td class="sidebar-content">
<div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)"><a href="Software_development_methodology" class="mw-redirect" title="Software development methodology">Methodologies</a> and frameworks</div><div class="sidebar-list-content mw-collapsible-content hlist">
<ul><li><a href="Adaptive_software_development" title="Adaptive software development">ASD</a></li>
<li><a href="Disciplined_agile_delivery" title="Disciplined agile delivery">DAD</a></li>
<li><a href="DevOps" title="DevOps">DevOps</a></li>
<li><a href="Dynamic_systems_development_method" title="Dynamic systems development method">DSDM</a></li>
<li><a href="Feature-driven_development" title="Feature-driven development">FDD</a></li>
<li><a href="Iterative_and_incremental_development" title="Iterative and incremental development">IID</a></li>
<li><a href="Kanban_(development)" title="Kanban (development)">Kanban</a></li>
<li><a href="Lean_software_development" title="Lean software development">Lean SD</a></li>
<li><a href="Scrum_(software_development)#Large-scale_Scrum" title="Scrum (software development)">LeSS</a></li>
<li><a href="Model-driven_development" class="mw-redirect" title="Model-driven development">MDD</a></li>
<li><a href="Microsoft_Solutions_Framework" title="Microsoft Solutions Framework">MSF</a></li>
<li><a href="Personal_software_process" title="Personal software process">PSP</a></li>
<li><a href="Rapid_application_development" title="Rapid application development">RAD</a></li>
<li><a href="Rational_unified_process" title="Rational unified process">RUP</a></li>
<li><a href="Scaled_agile_framework" title="Scaled agile framework">SAFe</a></li>
<li><a href="Scrum_(software_development)" title="Scrum (software development)">Scrum</a></li>
<li><a href="SEMAT" title="SEMAT">SEMAT</a></li>
<li><a href="Test-driven_development" title="Test-driven development">TDD</a></li>
<li><a href="Team_software_process" title="Team software process">TSP</a></li>
<li><a href="Unified_process" title="Unified process">UP</a></li>
<li><a href="Extreme_programming" title="Extreme programming">XP</a></li></ul></div></div></td>
</tr><tr><td class="sidebar-content">
<div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Supporting disciplines</div><div class="sidebar-list-content mw-collapsible-content hlist">
<ul><li><a href="Software_configuration_management" title="Software configuration management">Configuration management</a></li>
<li><a href="Deployment_management#Computer_science" title="Deployment management">Deployment management</a></li>
<li><a href="Software_documentation" title="Software documentation">Documentation</a></li>
<li><a href="Software_project_management" title="Software project management">Project management</a></li>
<li><a href="Software_quality_assurance" title="Software quality assurance">Quality assurance</a></li>
<li><a href="User_experience" title="User experience">User experience</a></li></ul></div></div></td>
</tr><tr><td class="sidebar-content">
<div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Practices</div><div class="sidebar-list-content mw-collapsible-content hlist">
<ul><li><a href="Acceptance_test-driven_development" title="Acceptance test-driven development">ATDD</a></li>
<li><a href="Behavior-driven_development" title="Behavior-driven development">BDD</a></li>
<li><a href="Extreme_programming_practices#Collective_code_ownership" title="Extreme programming practices">CCO</a></li>
<li><a href="Continuous_delivery" title="Continuous delivery">CD</a></li>
<li><a href="Continuous_integration" title="Continuous integration">CI</a></li>
<li><a href="Domain-driven_design" title="Domain-driven design">DDD</a></li>
<li><a href="Pair_programming" title="Pair programming">PP</a></li>
<li><a href="Specification_by_example" title="Specification by example">SBE</a></li>
<li><a href="Stand-up_meeting" title="Stand-up meeting">Stand-up</a></li>
<li><a href="Test-driven_development" title="Test-driven development">TDD</a></li></ul></div></div></td>
</tr><tr><td class="sidebar-content">
<div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)"><a href="Programming_tool" title="Programming tool">Tools</a></div><div class="sidebar-list-content mw-collapsible-content hlist">
<ul><li><a href="Build_automation" title="Build automation">Build automation</a></li>
<li><a href="Compiler" title="Compiler">Compiler</a></li>
<li><a href="Debugger" title="Debugger">Debugger</a></li>
<li><a href="Graphical_user_interface_builder" title="Graphical user interface builder">GUI builder</a></li>
<li><a href="Integrated_development_environment" title="Integrated development environment">IDE</a></li>
<li><a href="Infrastructure_as_code" title="Infrastructure as code">Infrastructure as code</a></li>
<li><a href="Profiling_(computer_programming)" title="Profiling (computer programming)">Profiler</a></li>
<li><a href="Application-release_automation" title="Application-release automation">Release automation</a></li>
<li><a href="UML_tool" title="UML tool">UML Modeling</a></li></ul></div></div></td>
</tr><tr><td class="sidebar-content">
<div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Standards and bodies of knowledge</div><div class="sidebar-list-content mw-collapsible-content hlist">
<ul><li><a href="Capability_Maturity_Model_Integration" title="Capability Maturity Model Integration">CMMI</a></li>
<li><a href="IEEE_Standards_Association" title="IEEE Standards Association">IEEE standards</a></li>
<li><a href="International_Requirements_Engineering_Board" title="International Requirements Engineering Board">IREB</a></li>
<li><a href="ISO_9001" class="mw-redirect" title="ISO 9001">ISO 9001</a></li>
<li><a href="ISO/IEC_JTC_1/SC_7" title="ISO/IEC JTC 1/SC 7">ISO/IEC standards</a></li>
<li><a href="ITIL" title="ITIL">ITIL</a></li>
<li><a href="Object_Management_Group" title="Object Management Group">OMG</a></li>
<li><a href="Project_Management_Body_of_Knowledge" title="Project Management Body of Knowledge">PMBOK</a></li>
<li><a href="Software_Engineering_Body_of_Knowledge" title="Software Engineering Body of Knowledge">SWEBOK</a></li></ul></div></div></td>
</tr><tr><td class="sidebar-content">
<div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Glossaries</div><div class="sidebar-list-content mw-collapsible-content hlist">
<ul><li><a href="Glossary_of_artificial_intelligence" title="Glossary of artificial intelligence">Artificial intelligence</a></li>
<li><a href="Glossary_of_computer_science" title="Glossary of computer science">Computer science</a></li>
<li><a href="Glossary_of_electrical_and_electronics_engineering" title="Glossary of electrical and electronics engineering">Electrical and electronics engineering</a></li></ul></div></div></td>
</tr><tr><td class="sidebar-content">
<div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Outlines</div><div class="sidebar-list-content mw-collapsible-content hlist">
<ul><li><a href="Outline_of_software_development" title="Outline of software development">Outline of software development</a></li></ul></div></div></td>
</tr><tr><td class="sidebar-navbar"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */
.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}
/* end https://en.wikipedia.org/ */
</style></td></tr></tbody></table><p><b>API testing</b> is a type of <a href="Software_testing" title="Software testing">software testing</a> that involves testing <a href="Application_programming_interface" class="mw-redirect" title="Application programming interface">application programming interfaces</a> (APIs) directly and as part of <a href="Integration_testing" title="Integration testing">integration testing</a> to determine if they meet expectations for functionality, reliability, performance, and <a href="Computer_security" title="Computer security">security</a>.<sup id="cite_ref-reichart1_1-0" class="reference"><a href="#cite_note-reichart1-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> Since APIs lack a <a href="Graphical_user_interface" title="Graphical user interface">GUI</a>, API testing is performed at the <a href="Communications_protocol" class="mw-redirect" title="Communications protocol">message layer</a>.<sup id="cite_ref-stickyminds_2-0" class="reference"><a href="#cite_note-stickyminds-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> API testing is now considered critical for automating testing because APIs serve as the primary interface to <a href="Application_logic" class="mw-redirect" title="Application logic">application logic</a> and because <a href="Graphical_user_interface_testing" title="Graphical user interface testing">GUI tests</a> are difficult to maintain with the short release cycles and frequent changes commonly used with <a href="Agile_software_development" title="Agile software development">Agile software development</a> and <a href="DevOps" title="DevOps">DevOps</a>.<sup id="cite_ref-forrblog_3-0" class="reference"><a href="#cite_note-forrblog-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-layers_4-0" class="reference"><a href="#cite_note-layers-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>
</p><meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="API_testing_overview">API testing overview</h2></div>
<p>API testing involves testing APIs directly (in isolation) and as part of the end-to-end transactions exercised during integration testing.<sup id="cite_ref-reichart1_1-1" class="reference"><a href="#cite_note-reichart1-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> Beyond <a href="Representational_state_transfer" class="mw-redirect" title="Representational state transfer">RESTful APIs</a>, these transactions include multiple types of endpoints such as <a href="Web_services" class="mw-redirect" title="Web services">web services</a>, <a href="Enterprise_service_bus" title="Enterprise service bus">ESBs</a>, <a href="Database" title="Database">databases</a>, <a href="Mainframe_computer" title="Mainframe computer">mainframes</a>, <a href="Web_application" title="Web application">web UIs</a>, and <a href="Enterprise_resource_planning" title="Enterprise resource planning">ERPs</a>. <a rel="nofollow" class="external text" href="https://www.hypertest.co/api-testing/top-10-api-testing-tools">API testing</a> is performed on APIs that the development team produces as well as APIs that the team consumes within their application (including third-party APIs).<sup id="cite_ref-reichart2_5-0" class="reference"><a href="#cite_note-reichart2-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>
</p><p>API testing is used to determine whether APIs return the correct response (in the expected format) for a broad range of feasible requests, react properly to <a href="Edge_cases" class="mw-redirect" title="Edge cases">edge cases</a> such as failures and unexpected/extreme inputs, deliver responses in an <a href="Service-level_agreement" title="Service-level agreement">acceptable amount of time</a>, and respond securely to potential <a href="Cyberwarfare" title="Cyberwarfare">security attacks</a>.<sup id="cite_ref-reichart1_1-2" class="reference"><a href="#cite_note-reichart1-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-layers_4-1" class="reference"><a href="#cite_note-layers-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> <a href="Service_virtualization" title="Service virtualization">Service virtualization</a> is used in conjunction with API testing to isolate the services under test as well as expand test environment access by simulating APIs/services that are not accessible for testing.<sup id="cite_ref-accelerate_6-0" class="reference"><a href="#cite_note-accelerate-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup>
</p><p>API testing commonly includes testing <a href="Representational_state_transfer" class="mw-redirect" title="Representational state transfer">REST</a> APIs or <a href="SOAP" title="SOAP">SOAP</a> <a href="Web_services" class="mw-redirect" title="Web services">web services</a> with <a href="JSON" title="JSON">JSON</a> or <a href="XML" title="XML">XML</a> <a href="Payload_(computing)" title="Payload (computing)">message payloads</a> being sent over <a href="HTTP" title="HTTP">HTTP</a>, <a href="HTTPS" title="HTTPS">HTTPS</a>, <a href="Java_Message_Service" class="mw-redirect" title="Java Message Service">JMS</a>, and <a href="IBM_WebSphere_MQ" class="mw-redirect" title="IBM WebSphere MQ">MQ</a>.<sup id="cite_ref-stickyminds_2-1" class="reference"><a href="#cite_note-stickyminds-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-guidance_7-0" class="reference"><a href="#cite_note-guidance-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup> It can also include message formats such as <a href="Society_for_Worldwide_Interbank_Financial_Telecommunication" class="mw-redirect" title="Society for Worldwide Interbank Financial Telecommunication">SWIFT</a>, <a href="Financial_Information_eXchange" title="Financial Information eXchange">FIX</a>, <a href="Electronic_data_interchange" title="Electronic data interchange">EDI</a> and similar fixed-length formats, <a href="Comma-separated_values" title="Comma-separated values">CSV</a>, <a href="ISO_8583" title="ISO 8583">ISO 8583</a> and <a href="Protocol_Buffers" title="Protocol Buffers">Protocol Buffers</a> being sent over
<a href="Communications_protocol" class="mw-redirect" title="Communications protocol">transports/protocols</a> such as <a href="TCP/IP" class="mw-redirect" title="TCP/IP">TCP/IP</a>, <a href="ISO_8583" title="ISO 8583">ISO 8583</a>, <a href="MQTT" title="MQTT">MQTT</a>, <a href="Financial_Information_eXchange" title="Financial Information eXchange">FIX</a>, <a href="Java_remote_method_invocation" title="Java remote method invocation">RMI</a>, <a href="SMTP" class="mw-redirect" title="SMTP">SMTP</a>, <a href="TIBCO_Rendezvous" class="mw-redirect" title="TIBCO Rendezvous">TIBCO Rendezvous</a>, and <a href="Financial_Information_eXchange" title="Financial Information eXchange">FIX</a>.<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="API_testing,_GUI_testing,_and_test_automation">API testing, GUI testing, and test automation</h2></div>
<p>API Testing is recognised as being more suitable for <a href="Automated_testing" class="mw-redirect" title="Automated testing">test automation</a> and <a href="Continuous_testing" title="Continuous testing">continuous testing</a> (especially the automation used with <a href="Agile_software_development" title="Agile software development">Agile software development</a> and <a href="DevOps" title="DevOps">DevOps</a>) than GUI testing.<sup id="cite_ref-forrblog_3-1" class="reference"><a href="#cite_note-forrblog-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-layers_4-2" class="reference"><a href="#cite_note-layers-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> Reasons cited include:
</p>
<ul><li><b>System complexity:</b> GUI tests can't sufficiently verify functional paths and back-end APIs/services associated with multitier architectures. APIs are considered the most stable interface to the system under test.</li>
<li><b>Short release cycles with fast feedback loops:</b> Agile and DevOps teams working with short iterations and fast feedback loops find that GUI tests require considerable rework to keep pace with frequent change. Tests at the API layer are less brittle and easier to maintain.</li></ul>
<p>For these reasons, it is recommended that teams increase their level of API testing while decreasing their reliance on GUI testing. API testing is recommended for the vast majority of test automation efforts and as much edge testing as possible. GUI testing is then reserved for validating typical use cases at the system level, mobile testing, and usability testing.<sup id="cite_ref-forrblog_3-2" class="reference"><a href="#cite_note-forrblog-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-layers_4-3" class="reference"><a href="#cite_note-layers-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-cohn_10-0" class="reference"><a href="#cite_note-cohn-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Types_of_API_testing">Types of API testing</h2></div>
<p>There are several types of tests that can be performed on APIs. Some of these include smoke testing, functional testing, security testing, penetration testing, and validation testing.
</p>
<ul><li><a href="Artificial_intelligence" title="Artificial intelligence">Artificial intelligence</a> (AI) used in API testing improves the efficiency and accuracy of the testing process. It can automatically generate test cases, identify potential issues, and analyze test results through machine learning to identify patterns and anomalies.<sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup></li>
<li><a href="Smoke_testing_(software)" title="Smoke testing (software)">Smoke test</a> - This is a preliminary test that checks if the most crucial functions of an API are working correctly and identifies any major issues before further testing.</li>
<li><a href="Functional_testing" title="Functional testing">Functional testing</a> - This type of testing validates a software system against its functional requirements by providing input and verifying the output. It mainly involves black box testing and is not concerned with the source code.</li>
<li><a href="Black_box_testing" class="mw-redirect" title="Black box testing">Black box testing</a> - This is a type of testing where the tester interacts with the API without knowing its internal workings. The tester provides input and observes the output generated by the API to identify how it responds to expected and unexpected user actions.</li>
<li><a href="Unit_testing" title="Unit testing">Unit testing</a> - This tests the smallest parts of an application, called units, for proper operation. In API testing, this includes testing single endpoints with a single request.</li>
<li><a href="Interoperability_testing" class="mw-redirect" title="Interoperability testing">Interoperability testing</a> - This test checks if an API can interact with other software components and systems without compatibility issues. This applies to SOAP APIs.</li>
<li><a href="Reliability_testing" class="mw-redirect" title="Reliability testing">Reliability testing</a> - This tests APIs to determine if they meet expectations for functionality, reliability, performance, and security. It aims to ensure that the API consistently performs as expected.</li>
<li><a href="Software_verification_and_validation" title="Software verification and validation">Validation testing</a> - This confirms the software matches business requirements and if API tests match expected results. It is closely related to User Acceptance Testing.</li>
<li><a href="Runtime_error_detection" title="Runtime error detection">Runtime error detection</a> - This evaluates the actual running of an API and focuses on monitoring, execution errors, resource leaks, and error detection. Detected errors are fixed to prevent runtime breakdowns.</li>
<li><a href="Fuzzing" title="Fuzzing">Fuzzing</a> - This test transmits random, invalid or unexpected input to an API to find unknown bugs and defects. An API fuzzer generates test inputs and request sequences to the API and records the response to see if any bugs or security vulnerabilities are uncovered.</li>
<li><a href="Load_test" class="mw-redirect" title="Load test">Load test</a> - This type of testing simulates real-world workloads to see how a system or application performs. The goal is to find bottlenecks and determine the maximum number of users or transactions the system can handle.</li>
<li><a href="Software_performance_testing" title="Software performance testing">Performance testing</a> - This type of testing evaluates how an API performs under certain conditions to assess the API's ability to handle high loads and maintain high-performance levels. There are two main types of API performance testing: functional testing and load testing.</li>
<li><a href="Security_Testing" class="mw-redirect" title="Security Testing">Security Testing</a> - This checks for vulnerabilities in APIs to find and fix security gaps. It involves mimicking hacker actions to find bugs and prevent attackers from accessing or disrupting the API or its data.</li>
<li><a href="Penetration_Testing" class="mw-redirect" title="Penetration Testing">Penetration Testing</a> - Ethical hacking is used to assess the security of an API design. An external pentester finds vulnerabilities in API integrations due to incorrect business logic or programming issues to identify security vulnerabilities that attackers could exploit.</li>
<li><a rel="nofollow" class="external text" href="https://docs.oracle.com/cd/E55956_01/doc.11123/external_user_guide/content/wsi_compliance.html">WS-* compliance testing</a> - This testing applies to SOAP APIs and ensures proper implementation of standards such as WS-Addressing, WS-Discovery, WS-Federation, WS-Policy, WS-Security, and WS-Trust.</li>
<li><a href="Graphical_user_interface_testing" title="Graphical user interface testing">Web UI testing</a> - Checks if the visual elements of a web application's user interface work correctly and are user-friendly. It is different from API testing, which tests the communication between software components.</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Software">Software</h2></div>
<table class="wikitable">
<tbody><tr>
<th>Name
</th>
<th>Vendor
</th></tr>
<tr>
<td>SoapSonar
</td>
<td>Crosscheck Networks
</td></tr>
<tr>
<td><a href="SoapUI" title="SoapUI">SoapUI</a>
</td>
<td><a href="SmartBear_Software" title="SmartBear Software">SmartBear Software</a>
</td></tr>
<tr>
<td>Postman API Platform
</td>
<td><a href="Postman_(software)" title="Postman (software)">Postman (software)</a>
</td></tr>
<tr>
<td><a href="SOAtest" title="SOAtest">SOAtest</a>
</td>
<td><a href="Parasoft" title="Parasoft">Parasoft</a>
</td></tr>
<tr>
<td><a href="Swagger_(software)" title="Swagger (software)">Swagger</a>
</td>
<td><a href="SmartBear_Software" title="SmartBear Software">SmartBear Software</a>
</td></tr>
<tr>
<td><a href="Katalon_Studio" title="Katalon Studio">Katalon Studio</a>
</td>
<td>Katalon
</td></tr>
<tr>
<td>vStellar
</td>
<td>vStellar
</td></tr>
<tr>
<td>Step CI
</td>
<td>Step CI
</td></tr>
<tr>
<td>Insomnia REST
</td>
<td><a href="Kong_Inc." title="Kong Inc.">Kong Inc.</a>
</td></tr></tbody></table>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Automated_testing" class="mw-redirect" title="Automated testing">Automated testing</a></li>
<li><a href="Service_virtualization" title="Service virtualization">Service virtualization</a></li>
<li><a href="Software_testing" title="Software testing">Software testing</a></li>
<li><a href="Web_API_security" title="Web API security">Web API security</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */
.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}
/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap mw-references-columns"><ol class="references">
<li id="cite_note-reichart1-1"><span class="mw-cite-backlink">^ <a href="#cite_ref-reichart1_1-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-reichart1_1-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-reichart1_1-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://searchsoftwarequality.techtarget.com/tip/Testing-APIs-protects-applications-and-reputations">Testing APIs protects applications and reputations</a>, by Amy Reichert, SearchSoftwareQuality March 2015</span>
</li>
<li id="cite_note-stickyminds-2"><span class="mw-cite-backlink">^ <a href="#cite_ref-stickyminds_2-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-stickyminds_2-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.stickyminds.com/interview/all-about-api-testing-interview-jonathan-cooper">All About API Testing: An Interview with Jonathan Cooper</a>, by Cameron Philipp-Edmonds, Stickyminds August 19, 2014</span>
</li>
<li id="cite_note-forrblog-3"><span class="mw-cite-backlink">^ <a href="#cite_ref-forrblog_3-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-forrblog_3-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-forrblog_3-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://blogs.forrester.com/diego_lo_giudice/15-04-23-the_forrester_wave_evaluation_of_functional_test_automation_fta_is_out_and_its_all_about_going_be?cm_mmc=RSS-_-BT-_-63-_-blog_1769">The Forrester Wave Evaluation Of Functional Test Automation (FTA) Is Out And It's All About Going Beyond GUI Testing</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150528225452/http://blogs.forrester.com/diego_lo_giudice/15-04-23-the_forrester_wave_evaluation_of_functional_test_automation_fta_is_out_and_its_all_about_going_be?cm_mmc=RSS-_-BT-_-63-_-blog_1769">Archived</a> 2015-05-28 at the <a href="Wayback_Machine" title="Wayback Machine">Wayback Machine</a>, by Diego Lo Giudice, <a href="Forrester_Research" title="Forrester Research">Forrester</a> April 23, 2015</span>
</li>
<li id="cite_note-layers-4"><span class="mw-cite-backlink">^ <a href="#cite_ref-layers_4-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-layers_4-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-layers_4-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-layers_4-3"><sup><i><b>d</b></i></sup></a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://www.gartner.com/en/documents/2645817">Produce Better Software by Using a Layered Testing Strategy</a>, by SEAN Kenefick, <a href="Gartner" title="Gartner">Gartner</a> January 7, 2014</span>
</li>
<li id="cite_note-reichart2-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-reichart2_5-0">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://searchsoftwarequality.techtarget.com/tip/Onus-for-third-party-APIs-is-on-enterprise-developers">Onus for third-party APIs is on enterprise developers</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20190731082123/http://searchsoftwarequality.techtarget.com/tip/Onus-for-third-party-APIs-is-on-enterprise-developers">Archived</a> 2019-07-31 at the <a href="Wayback_Machine" title="Wayback Machine">Wayback Machine</a>, by Amy Reichert, SearchSoftwareQuality July 2014</span>
</li>
<li id="cite_note-accelerate-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-accelerate_6-0">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.gartner.com/document/2642716">Accelerate Development with Automated Testing</a>, by Nathan Wilson, <a href="Gartner" title="Gartner">Gartner</a> December 30, 2013</span>
</li>
<li id="cite_note-guidance-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-guidance_7-0">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.gartner.com/document/2827918">A Guidance Framework for Designing a Great Web API</a>, by Eric Knipp and Gary Olliffe, <a href="Gartner" title="Gartner">Gartner</a> August 20, 2014</span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.drdobbs.com/tools/the-fight-against-brittle-scripts-and-so/231901658">The Fight Against Brittle Scripts and Software Defects</a>, by Adrian Bridgwater, <a href="Dr._Dobb's_Journal" title="Dr. Dobb's Journal">Dr. Dobb's Journal</a> October 26, 2011</span>
</li>
<li id="cite_note-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-9">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.drdobbs.com/testing/how-do-we-learn-composite-app-testing-sp/232600874">How Do We Learn Composite App Testing-Speak?</a>, by Adrian Bridgwater, <a href="Dr._Dobb's_Journal" title="Dr. Dobb's Journal">Dr. Dobb's Journal</a> February 14, 2012</span>
</li>
<li id="cite_note-cohn-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-cohn_10-0">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */
.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}
/* end https://en.wikipedia.org/ */
</style><cite id="CITEREFCohn2009" class="citation book cs1"><a href="Mike_Cohn" title="Mike Cohn">Cohn, Mike</a> (2009). <span class="id-lock-limited" title="Free access subject to limited trial, subscription normally required"><a rel="nofollow" class="external text" href="https://archive.org/details/succeedingwithag00cohn_772"><i>Succeeding with Agile: Software Development Using Scrum</i></a></span>. Addison-Wesley Professional. p. <a rel="nofollow" class="external text" href="https://archive.org/details/succeedingwithag00cohn_772/page/n315">312</a>. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <bdi>978-0321579362</bdi>.</cite></span>
</li>
<li id="cite_note-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-11">^</a></b></span> <span class="reference-text"><cite id="CITEREFJ._Gao,_C._Tao,_D._Jie_ĺ,_S._Lu2019" class="citation book cs1">J. Gao, C. Tao, D. Jie ĺ, S. Lu (2019). <a rel="nofollow" class="external text" href="https://ieeexplore.ieee.org/document/8705808/authors#authors"><i>What is AI Software Testing? and Why</i></a>. IEEE. pp. <span class="nowrap">27–</span>2709. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1109%2FSOSE.2019.00015">10.1109/SOSE.2019.00015</a>.</cite><span class="cs1-maint citation-comment"><code class="cs1-code">{{cite book}}</code>: CS1 maint: multiple names: authors list (link)</span></span>
</li>
</ol></div></div>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */
.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}
/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="Software_testing107" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Software_testing107" style="font-size:114%;margin:0 4em"><a href="Software_testing" title="Software testing">Software testing</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Test levels</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Acceptance_testing" title="Acceptance testing">Acceptance testing</a></li>
<li><a href="System_integration_testing" title="System integration testing">System integration testing</a></li>
<li><a href="System_testing" title="System testing">System testing</a></li>
<li><a href="Integration_testing" title="Integration testing">Integration testing</a></li>
<li><a href="Unit_testing" title="Unit testing">Unit testing</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Test types,<br>techniques,<br><a href="Software_testing_tactics" title="Software testing tactics">tactics</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><td colspan="2" class="navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="A/B_testing" title="A/B testing">A/B testing</a></li>
<li><a href="Benchmark_(computing)" title="Benchmark (computing)">Benchmark</a></li>
<li><a href="Compatibility_testing" title="Compatibility testing">Compatibility testing</a></li>
<li><a href="Concolic_testing" title="Concolic testing">Concolic testing</a></li>
<li><a href="Concurrent_testing" title="Concurrent testing">Concurrent testing</a></li>
<li><a href="Conformance_testing" title="Conformance testing">Conformance testing</a></li>
<li><a href="Continuous_testing" title="Continuous testing">Continuous testing</a></li>
<li><a href="Destructive_testing" title="Destructive testing">Destructive testing</a></li>
<li><a href="Development_testing" title="Development testing">Development testing</a></li>
<li><a href="Differential_testing" title="Differential testing">Differential testing</a></li>
<li><a href="Dynamic_program_analysis" title="Dynamic program analysis">Dynamic program analysis</a></li>
<li><a href="Installation_testing" title="Installation testing">Installation testing</a></li>
<li><a href="Negative_testing" title="Negative testing">Negative testing</a></li>
<li><a href="Random_testing" title="Random testing">Random testing</a></li>
<li><a href="Regression_testing" title="Regression testing">Regression testing</a></li>
<li><a href="Security_testing" title="Security testing">Security testing</a></li>
<li><a href="Smoke_testing_(software)" title="Smoke testing (software)">Smoke testing (software)</a></li>
<li><a href="Software_performance_testing" title="Software performance testing">Software performance testing</a></li>
<li><a href="Stress_testing_(software)" title="Stress testing (software)">Stress testing</a></li>
<li><a href="Symbolic_execution" title="Symbolic execution">Symbolic execution</a></li>
<li><a href="Test_automation" title="Test automation">Test automation</a></li>
<li><a href="Usability_testing" title="Usability testing">Usability testing</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">[x]-box<br>style</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Black-box_testing" title="Black-box testing">Black-box testing</a>
<ul><li><a href="All-pairs_testing" title="All-pairs testing">All-pairs testing</a></li>
<li><a href="Exploratory_testing" title="Exploratory testing">Exploratory testing</a></li>
<li><a href="Fuzz_testing" class="mw-redirect" title="Fuzz testing">Fuzz testing</a></li>
<li><a href="Model-based_testing" title="Model-based testing">Model-based testing</a></li>
<li><a href="Scenario_testing" title="Scenario testing">Scenario testing</a></li></ul></li>
<li><a href="Grey-box_testing" class="mw-redirect" title="Grey-box testing">Grey-box testing</a></li>
<li><a href="White-box_testing" title="White-box testing">White-box testing</a>
<ul>
<li><a href="Mutation_testing" title="Mutation testing">Mutation testing</a></li>
<li><a href="Static_testing" class="mw-redirect" title="Static testing">Static testing</a></li></ul></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">See also</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Graphical_user_interface_testing" title="Graphical user interface testing">Graphical user interface testing</a></li>
<li><a href="Manual_testing" title="Manual testing">Manual testing</a></li>
<li><a href="Orthogonal_array_testing" title="Orthogonal array testing">Orthogonal array testing</a></li>
<li><a href="Pair_testing" title="Pair testing">Pair testing</a></li>
<li><a href="Soak_testing" title="Soak testing">Soak testing</a></li>
<li><a href="Software_reliability_testing" title="Software reliability testing">Software reliability testing</a></li>
<li><a href="Stress_testing" title="Stress testing">Stress testing</a></li>
<li><a href="Web_testing" title="Web testing">Web testing</a></li></ul>
</div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-02-14" href="https://en.wikipedia.org/wiki/?title=API_testing&oldid=1275665839">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
</body></html>